Nfc device configuration after device power up

ABSTRACT

A NFC tag includes an NFC controller, with a secure element coupled to the NFC controller. The secure element is to send first configuration data to the NFC controller and not second configuration data. The first configuration data comprises data to be used by the NFC controller to generate responses to initial polling and anti-collision commands from an external NFC device and not data to be used by the NFC controller in processing a command from the external NFC device involving the use of an upper layer protocol. The second configuration data comprises data to be used by the NFC controller in processing a command involving the use of an upper layer protocol from the external NFC device.

TECHNICAL FIELD

This disclosure is related to the field of near field communication(NFC) and, more particularly, to the configuration of an unpowered NFCdevice or NFC device in card emulation mode after powering on.

BACKGROUND

Near field communication (NFC) is a set of standards for smartphones andsimilar devices utilized to establish radio communication between twodevices by touching them together or bringing them into proximity,typically at a distance of 10 cm or less.

NFC uses electromagnetic induction between two loop antennas locatedwithin each other's near field, effectively forming an air-coretransformer. It operates within globally available and unlicensed radiofrequency bands, such as 13.56 MHz, and at rates ranging from 106 kbit/sto 424 kbit/s. NFC involves an initiator and a target; the initiatoractively generates an RF field that can power a passive target, anunpowered chip called a “tag”. This enables NFC targets to take simpleform factors such as stickers, key fobs, or cards that do not usebatteries.

NFC tags store data (typically between 96 and 4,096 bytes) and may beread-only, but may alternatively be rewriteable. The tags can securelystore personal data such as debit and credit card information, loyaltyprogram data, personal identification numbers, and networking contacts,among other information. They can be custom-encoded by theirmanufacturers or use the specifications provided by the NFC Forum, anindustry association.

In addition to communication between a powered NFC device and anunpowered NFC device, NFC peer-to-peer communication is possible,provided both devices are powered. This may be utilized for datapeer-to-peer data transfers, for example. In addition, an active NFCdevice may emulate an NFC card in what is called a card emulation mode.

In an NFC communication between an NFC tag and an active NFC device, orbetween a powered NFC device in card emulation mode and an active NFCdevice, there is an initialization period. As per the ISO 14443 standardfor such communications, the NFC tag or powered NFC device in cardemulation mode is to respond to lower level protocol commands within agiven period of time from application of an unmodulated electric fieldby the active NFC device. In order to respond to those commands,provided there is no non-voltaile memory available, the NFC tag orpowered NFC device in card emulation mode first loads configurationdata, and then responds to those commands based upon the configurationdata. Therefore, the NFC tag or powered NFC device in card emulationmode is preferably able to load the configuration data and respond tothe commands in the given period of time.

While certain configurations wherein the NFC tag or powered NFC devicein card emulation mode are able to load the configuration data withinthe given period of time are known, additional configurations may bedesirable. Therefore, new methods of handling data during theinitialization period are desired.

SUMMARY

This summary is provided to introduce a selection of concepts that arefurther described below in the detailed description. This summary is notintended to identify key or essential features of the claimed subjectmatter, nor is it intended to be used as an aid in limiting the scope ofthe claimed subject matter.

An electronic device includes an NFC controller, with a secure elementcoupled to the NFC controller. The secure element is to send firstconfiguration data to the NFC controller and not second configurationdata. The first configuration data includes data to be used by the NFCcontroller to generate responses to initial polling and anti-collisioncommands from an external NFC device and not data to be used by the NFCcontroller in processing a command from the external NFC deviceinvolving the use of an upper layer protocol. The second configurationdata includes data to be used by the NFC controller in processing acommand involving the use of an upper layer protocol from the externalNFC device.

The NFC controller may be further configured to receive the initialpolling and anti-collision commands from the external NFC device andrespond thereto based upon the first configuration data. In addition, anelapsed time from powering on of the NFC controller to responding to theinitial polling and anti-collision commands from the external NFC devicemay be within an initialization time period, such as no more than 5 ms.

The NFC controller may be further configured to receive the commandinvolving the use of the upper layer protocol from the external NFCdevice, and send a wait period request to the external NFC device thatinstructs the external NFC device to wait a given period of time toreceive a response to the command involving the use of the upper layerprotocol. The secure element may be further configured to send thesecond configuration data to the NFC controller during the given periodof time. The NFC controller may be further configured to send a responseto the command involving the use of the upper layer protocol to theexternal NFC device.

A method aspect is directed to method including sending firstconfiguration data and not second configuration data from a secureelement to a NFC controller. The first configuration data includes datato be used by the NFC controller to generate responses to initialpolling and anti-collision commands from an external NFC device and notdata to be used by the NFC controller in processing a command from theexternal NFC device involving the use of an upper layer protocol. Thesecond configuration data includes data to be used by the NFC controllerin processing a command involving the use of an upper layer protocolfrom the external NFC device.

Another aspect is directed to a system including a first NFC deviceconfigured to emit an electric field from. The system also includes asecond NFC device in proximity to the first NFC device and being poweredby the electric field emitted thereby. The second NFC device has a NFCcontroller, and a secure element configured to send first configurationdata and not second configuration data to the NFC controller. The firstconfiguration data includes data to be used by the NFC controller togenerate responses to initial polling and anti-collision commands fromthe first NFC device and wherein the second configuration data includesdata to be used by the NFC controller in processing a command from thefirst NFC device involving the use of an upper layer protocol.

A further aspect is directed to a method that includes emitting anelectric field from a first near field communications (NFC) device so asto power a second NFC device in proximity thereto. The method alsoincludes receiving first configuration data sent by a secure element ofthe second NFC device, at a NFC controller of the second NFC device. Thefirst configuration data is data to be used by the NFC controller togenerate a response to lower level protocol commands from the first NFCdevice, and not data to be used by the NFC controller in processing ahigher level protocol command from the first NFC device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a NFC enabled electronic device such as maybe used with the configuration techniques described herein.

FIG. 2 is a timing diagram showing data exchanged between first andsecond NFC devices during configuration.

DETAILED DESCRIPTION

One or more embodiments of the present disclosure will be describedbelow. These described embodiments are only examples of the presentlydisclosed techniques. Additionally, in an effort to provide a concisedescription, all features of an actual implementation may not bedescribed in the specification.

When introducing elements of various embodiments of the presentdisclosure, the articles “a,” “an,” and “the” are intended to mean thatthere are one or more of the elements. The terms “comprising,”“including,” and “having” are intended to be inclusive and mean thatthere may be additional elements other than the listed elements.Additionally, it should be understood that references to “oneembodiment” or “an embodiment” of the present disclosure are notintended to be interpreted as excluding the existence of additionalembodiments that also incorporate the recited features. Like referencenumbers in the drawing figures refer to like elements throughout, andreference numbers separated by century, as well as reference numberswith prime notation, indicate similar elements in other applications orembodiments.

With initial reference to FIG. 1, an electronic device 10 is nowdescribed. The electronic device 10 may be any NFC enabled device, suchas a smartphone, tablet, or smartwatch. The electronic device 10includes a central processor, referred to here as a device host 14,which may be a system on chip. The device host 14 is coupled to a NFCcontroller 12, which acts as a communications interface (e.g. in someexamples, a universal asynchronous receiver/transmitter) for NFCcommunications, an embedded secure element 20 which provides a securememory and execution environment for security conscious transactionssuch as financial transactions, and an NFC antenna 18 by which thedevice host 14 transmits or receives data via NFC. An external NFCdevice 16, communicates with the NFC controller 12 via the NFC antenna18.

The electronic device 10 may be operating in the card emulation mode, inwhich the NFC controller 12 simulates the behavior of an NFC card, suchas an ISO-14443 smartcard. This allows the electronic device 10 tosubstitute for a NFC card used in traditional security applications suchcredit card payments, identification badging, etc.

When the electronic device 10 is operating in the card emulation mode,or when the electronic device 10 is an unpowered NFC device such as atag, and when the electronic device 10 lacks nonvolatile memory, the NFCcontroller 12 is to, after booting up, load configuration informationthat enables it to properly communicate with the external NFC device 16using NFC. This configuration information includes configurationinformation to be used by the NFC controller 12 to respond to both lowerlevel protocol commands and higher level protocol commands. NFCcommunications protocols, such as ISO 14443, allot a given amount oftime after booting up (i.e. activation of the NFC field) for theunpowered device or device in card emulation mode to have loaded theconfiguration data and to be able to respond to received commands. Withrespect to ISO 14443, the given amount of time is 5 ms.

One possible place to store this configuration information is in anadditional non-volatile memory (not shown) in the electronic device 10.This would allow the complete configuration information to be retrievedby the NFC controller 12 within the given amount of time, and for theNFC controller 12 to thus be able to respond to commands by the end ofthat amount of time. However, the addition of such a non-volatile memory(not shown) may serve to increase the cost of the electronic device 10,and may additionally take up room within the electronic device 10 thatcould have been otherwise used for other components.

To that end, the configuration information may instead be stored in thesecure element 20, which includes a non-volatile memory therein.However, since the secure element 20 provides a secure memory andexecution environment, the secure element has a boot up time associatedwith it as well. If the entirety of the configuration information (i.e.,such as that enabling the NFC controller 12 to respond to both lowerlevel protocol commands and higher level protocol commands) is to beloaded from the secure element 20, due to the boot up time of the secureelement 20, the configuration information may not reach the NFCcontroller 12 by the end of the given period of time, causing an errorand a lack of NFC communication between the NFC controller 12 and theexternal NFC device 16.

The Inventors have determined that only a subset of the configurationinformation is utilized in responding to the lower level protocolcommands from the external NFC device 16, which are sent before higherlevel protocol commands. Thus, the configuration information is splitinto a first set of configuration information containing theconfiguration information to be used for responding to lower levelprotocol commands, and a second set of configuration informationcontaining the configuration information to be used for responding tohigher level protocol commands. Both the first set of configurationinformation and the second set of configuration information are storedin the secure element 20, however the first subset of configurationinformation uses less storage space than the second subset ofconfiguration information, and hence can be loaded within the desired 5ms time limit. For example, in some instances, it has been found thatthe first set of configuration information is about 10% of the size ofthe second set of configuration information.

Operation of the electronic device 10 such that the secure element 20stores the configuration information will now be described withadditional reference to FIG. 2. The external NFC device 16 activates anunmodulated NFC field to power the NFC device 12. This causes the NFCcontroller 12 to boot up, which in turn causes the secure element 20 toboot up. Once the secure element 20 boots up, the NFC controller 12loads therefrom the first set of configuration data, which is thatconfiguration data that allows it to generate responses to initialpolling and anti-collision commands from the external NFC device 16.These lower level protocol commands are referred to as Level 3 commandsin the ISO 14443 specification.

Since the first set of configuration data is smaller in size than thesecond set of configuration data, the secure element 20 is able to loadthe first configuration data, send it to the NFC controller 12, and theNFC controller 12 is in turn able to process the first configurationdata and be ready to respond to lower level protocol commands within thegiven time (i.e., 5 ms).

At the end of the given time, the external NFC device 16 sends the firstlower level protocol command to the NFC controller 12, which is able torespond. A series of lower level protocol commands and responses thencommence, until the time at which the external NFC device 16 sends thefirst higher level protocol command to the NFC controller 12. At thispoint, the NFC controller 12 is able to send a wait time extensionrequest, for example such as that provided for in the ISO 14443specification, to the external NFC device 16. It should be noted thatthe NFC controller 12 can, if desired, send multiple wait time extensionrequests to the external NFC device 16.

The external NFC device 16 receives the wait time extension request andwaits the period of time specified for the wait time extension request.During this wait time, the secure element 20 loads the second set ofconfiguration data and sends the second set of configuration data to theNFC controller 12. The second set of configuration data is theconfiguration data that allows the NFC controller 12 to generateresponses to commands from the external NFC device 16 involving the useof an upper layer protocol. These higher level protocol commands arereferred to as Level 4 commands in the ISO 14443 specification. The NFCcontroller 12 processes this second set of configuration data and isthen configured to respond to higher level protocol commands. At the endof the wait time, the NFC controller 12 responds to the first higherlevel protocol command. A series of higher level protocol commands andresponse may then ensue.

While the disclosure has been described with respect to a limited numberof embodiments, those skilled in the art, having benefit of thisdisclosure, will appreciate that other embodiments can be envisionedthat do not depart from the scope of the disclosure as disclosed herein.Accordingly, the scope of the disclosure shall be limited only by theattached claims.

1. An electronic device, comprising: a near field communications (NFC)controller; and a secure element coupled to the NFC controller andconfigured to send first configuration data to the NFC controller andnot second configuration data; wherein the first configuration datacomprises data to be used by the NFC controller to generate responses toinitial polling and anti-collision commands from an external NFC deviceand not data to be used by the NFC controller in processing a commandfrom the external NFC device involving the use of an upper layerprotocol; wherein the second configuration data comprises data to beused by the NFC controller in processing a command involving the use ofan upper layer protocol from the external NFC device.
 2. The electronicdevice of claim 1, wherein the NFC controller is further configured toreceive the initial polling and anti-collision commands from theexternal NFC device and respond thereto based upon the firstconfiguration data.
 3. The electronic device of claim 2, wherein anelapsed time from powering on of the NFC controller to responding to theinitial polling and anti-collision commands from the external NFC deviceis within an initialization time period.
 4. The electronic device ofclaim 3, wherein the initialization time period is no more than 5 ms. 5.The electronic device of claim 1, wherein the NFC controller is furtherconfigured to: receive the command involving the use of the upper layerprotocol from the external NFC device, and send a wait period request tothe external NFC device that instructs the external NFC device to wait agiven period of time to receive a response to the command involving theuse of the upper layer protocol; and wherein the secure element isfurther configured to send the second configuration data to the NFCcontroller during the given period of time.
 6. The electronic device ofclaim 5, wherein the NFC controller is further configured to send aresponse to the command involving the use of the upper layer protocol tothe external NFC device.
 7. A method, comprising: sending firstconfiguration data and not second configuration data from a secureelement to a NFC controller; wherein the first configuration datacomprises data to be used by the NFC controller to generate responses toinitial polling and anti-collision commands from an external NFC deviceand not data to be used by the NFC controller in processing a commandfrom the external NFC device involving the use of an upper layerprotocol; wherein the second configuration data comprises data to beused by the NFC controller in processing a command involving the use ofan upper layer protocol from the external NFC device.
 8. The method ofclaim 7, further comprising receiving the initial polling andanti-collision commands from the external NFC device and respondingthereto based upon the first configuration data, using the NFCcontroller.
 9. The method of claim 8, wherein an elapsed time frompowering of the NFC controller to responding to the initial polling andanti-collision commands from the external NFC device is within aninitialization time period.
 10. The method of claim 9, furthercomprising: receiving the command from the external NFC device involvingthe use of the upper layer protocol, at the NFC controller; sending await period request from the NFC controller to the external NFC devicethat instructs the first NFC device to wait a given period of time toreceive a response to the command involving the use of the upper layerprotocol; and sending the second configuration data from the secureelement to the NFC controller during the given period of time.
 11. Themethod of claim 10, further comprising sending a response to the commandinvolving the use of the upper layer protocol from the NFC controller tothe external NFC device.
 12. A system, comprising: a first NFC deviceconfigured to emit an electric field from; a second NFC device inproximity to the first NFC device and being powered by the electricfield emitted thereby, the second NFC device comprising: a NFCcontroller, and a secure element configured to send first configurationdata and not second configuration data to the NFC controller, whereinthe first configuration data comprises data to be used by the NFCcontroller to generate responses to initial polling and anti-collisioncommands from the first NFC device and wherein the second configurationdata comprises data to be used by the NFC controller in processing acommand from the first NFC device involving the use of an upper layerprotocol.
 13. The system of claim 12, wherein the first NFC device isconfigured to send the initial polling and anti-collision commands tothe second NFC device; and wherein the NFC controller is furtherconfigured to respond to the initial polling and anti-collision commandsbased upon the first configuration data.
 14. The electronic device ofclaim 12, wherein the first NFC device is further configured to send thecommand involving the use of the upper layer protocol to the second NFCdevice; wherein the NFC controller is further configured to send a waitperiod request to the first NFC device that instructs the first NFCdevice to wait a given period of time to receive a response to thecommand involving the use of the upper layer protocol; wherein thesecure element is further configured to send the second configurationdata to the NFC controller during the given period of time; and whereinthe NFC controller is further configured to send a response to thecommand involving the use of the upper layer protocol to the first NFCdevice.
 15. A method, comprising: emitting an electric field from afirst near field communications (NFC) device so as to power a second NFCdevice in proximity thereto; and receiving first configuration data sentby a secure element of the second NFC device and not secondconfiguration data, at a NFC controller of the second NFC device;wherein the first configuration data comprises data to be used by theNFC controller to generate responses to initial polling andanti-collision commands from the first NFC device and wherein the secondconfiguration data comprises data to be used by the NFC controller inprocessing a command from the first NFC device involving the use of anupper layer protocol.
 16. The method of claim 15, further comprisingreceiving the initial polling and anti-collision commands from the firstNFC device and responding thereto based upon the first configurationdata.
 17. The method of claim 16, wherein an elapsed time from poweringof the second NFC device to responding to the initial polling andanti-collision commands from the first NFC device is within aninitialization time period.
 18. The method of claim 15, furthercomprising: receiving the command from the first NFC device involvingthe use of the upper layer protocol, at the NFC controller; sending await period request from the NFC controller to the first NFC device thatinstructs the first NFC device to wait a given period of time to receivea response to the command involving the use of the upper layer protocol;and receiving the second configuration data sent by the secure element,at the NFC controller, during the given period of time.
 19. The methodof claim 18, further comprising sending a response to the commandinvolving the use of the upper layer protocol from the NFC controller tothe first NFC device.
 20. A method, comprising: emitting an electricfield from a first near field communications (NFC) device so as to powera second NFC device in proximity thereto; and receiving firstconfiguration data sent by a secure element of the second NFC device, ata NFC controller of the second NFC device; wherein the firstconfiguration data comprises data to be used by the NFC controller togenerate a response to lower level protocol commands from the first NFCdevice, and not data to be used by the NFC controller in processing ahigher level protocol command from the first NFC device.
 21. The methodof claim 20, wherein the higher level protocol command comprises acommand involving the use of an upper layer protocol.
 22. The method ofclaim 20, further comprising receiving the lower level protocol commandsfrom the first NFC device and responding thereto based upon the firstconfiguration data.
 23. The method of claim 20, further comprising:receiving the higher level protocol command from the first NFC device,at the NFC controller; sending a wait period request from the NFCcontroller to the first NFC device that instructs the first NFC deviceto wait a given period of time to receive a response to the higher levelcommand; and receiving the second configuration data sent by the secureelement, at the NFC controller, during the given period of time.
 24. Themethod of claim 23, further comprising sending a response to the higherlevel command from the NFC controller to the first NFC device.